Conferences

interface Conferences

This module is used to manage conferences.

A bubble is also called a room. This is exactly the same object.

Types

Link copied to clipboard
object Companion
Link copied to clipboard

Interface defining callbacks for handling events related to Conferences within the SDK.

Link copied to clipboard

Functions

Link copied to clipboard
abstract fun acceptGoOnStageRequest(room: IRainbowRoom)

Let you go on stage in a webinar

Link copied to clipboard
abstract fun addRainbowParticipants(room: IRainbowRoom, contacts: ArrayList<IRainbowContact>, listener: RainbowListener<Unit, ConferenceRepository.AddParticipantByPhoneNumberError>)

Call some rainbow contacts to add it to an ongoing conference

Link copied to clipboard

Let you know you if the user is already connected in the conference associated to a bubble

Link copied to clipboard
abstract fun declineConference(room: IRainbowRoom?, listener: RainbowListener<Unit, Unit>? = null)

Let you decline a conference so that it stops ringing on all devices

Link copied to clipboard
abstract fun delegateConference(room: IRainbowRoom?, conferenceParticipant: ConferenceParticipant?, hangupCall: Boolean = false, listener: RainbowListener<Unit, ConferenceRepository.DelegateConferenceError>? = null)

Delegate an ongoing conference from the user to another participant.

Link copied to clipboard
abstract fun disableIncomingVideos(room: IRainbowRoom, disable: Boolean, sharing: Boolean)

When a conference is started, it is possible to disable all incoming videos in order to save bandwidth.

Link copied to clipboard
abstract fun getConferenceTalkingTime(room: IRainbowRoom?, listener: RainbowListener<List<ConferenceParticipant>, Unit>? = null)

Get a list of participants and their talking time from the last conference of the Bubble in parameter. If there is an ongoing conference on the bubble, the result will be from this one.

Link copied to clipboard
abstract fun getOffStage(room: IRainbowRoom)

Let you get off stage in a webinar

Link copied to clipboard
abstract fun hangUpParticipant(room: IRainbowRoom?, participant: ConferenceParticipant?, listener: RainbowListener<Unit, ConferenceRepository.ConferenceOptionsError>? = null)

hangup a participant in a conference

Link copied to clipboard
abstract fun isConferenceReachable(room: IRainbowRoom?): Boolean

This method allows to know if a conference is reachable or not. If the conference is not reachable, it's because the conference is not correctly started

Link copied to clipboard
abstract fun joinAudioConference(room: IRainbowRoom?, listener: RainbowListener<String, ConferenceRepository.StartJoinConferenceError>? = null)

Join conference in audio mode : this method is called when a conference is already started.

Link copied to clipboard
abstract fun lockConference(room: IRainbowRoom?, newLockState: Boolean, listener: RainbowListener<Unit, ConferenceRepository.ConferenceOptionsError>? = null)

Let you lock/unlock a conference so that no other participant can join it

Link copied to clipboard
abstract fun lowerAllHands(roomId: String, listener: RainbowListener<Unit, Unit>?)

Lower all hands in the conference. Only accessible to organizers.

Link copied to clipboard
abstract fun lowerHand(roomId: String, userId: String, listener: RainbowListener<Unit, Unit>?)

Lower a hand in the conference. Only organizers are authorized to lower the hand of someone else but everyone can lower his own hand.

Link copied to clipboard
abstract fun muteAllParticipants(room: IRainbowRoom?, mute: Boolean, listener: RainbowListener<Unit, ConferenceRepository.ConferenceOptionsError>? = null)

mute / unmute all participants of the conference

Link copied to clipboard
abstract fun pauseRecording(roomId: String?, listener: RainbowListener<Unit, ConferenceRepository.RecordingError>?)

Let you pause the conference recording

Link copied to clipboard
abstract fun raiseHand(roomId: String, listener: RainbowListener<Unit, Unit>?)

Raise your hand in a conference.

Link copied to clipboard

Registers an implementation of IConferencesListener to receive callbacks when the SDK notifies of a new event.

Link copied to clipboard
abstract fun rejectGoOnStageRequest(room: IRainbowRoom)

Let you reject a go on stage request

Link copied to clipboard
abstract fun reSubscribeToVideo(room: IRainbowRoom?, publisher: ConferenceParticipant?, listener: RainbowListener<Unit, ConferenceRepository.SubscribeParticipantVideoError>? = null)

When a conference is started, it is possible to resubscribe to a video using this method. This is used to restart the video if it becomes stuck somehow.

Link copied to clipboard
abstract fun resumeRecording(roomId: String?, listener: RainbowListener<Unit, ConferenceRepository.RecordingError>?)

Let you resume the conference recording

Link copied to clipboard
abstract fun startAndJoinConference(room: IRainbowRoom?, listener: RainbowListener<String, ConferenceRepository.StartJoinConferenceError>? = null)

If the user is the owner's bubble, the user will start the conference and will join the conference.

Link copied to clipboard
abstract fun startRecording(roomId: String?, listener: RainbowListener<Unit, ConferenceRepository.RecordingError>?)

Let you start the conference recording

Link copied to clipboard
abstract fun stopAudioConference(room: IRainbowRoom?, listener: RainbowListener<Unit, ConferenceRepository.ConferenceOptionsError>? = null)

Stop conference.

Link copied to clipboard
abstract fun stopRecording(roomId: String?, listener: RainbowListener<Unit, ConferenceRepository.RecordingError>?)

Let you stop the conference recording

Link copied to clipboard
abstract fun subscribeToService(room: IRainbowRoom?, serviceId: String, listener: RainbowListener<Unit, ConferenceRepository.SubscribeParticipantVideoError>? = null)

when a conference is started,it is possible to subscribe to service using this method

Link copied to clipboard
abstract fun subscribeToVideo(room: IRainbowRoom?, publisher: ConferenceParticipant?, multiVideoQuality: MultiVideoQuality?, activeSpeaker: Boolean, webinarSharing: Boolean, listener: RainbowListener<Unit, ConferenceRepository.SubscribeParticipantVideoError>? = null)

when a conference is started, it is possible to subscribe to video using this method

Link copied to clipboard
abstract fun toggleMuteStateParticipant(room: IRainbowRoom?, participant: ConferenceParticipant?, listener: RainbowListener<UpdateParticipantResult, ConferenceRepository.ConferenceOptionsError>? = null)

mute : unmute participant

Link copied to clipboard

Unregisters a previously registered IConferencesListener, stopping callbacks for notifications.

Link copied to clipboard
abstract fun unsubscribeToVideo(room: IRainbowRoom, publisher: ConferenceParticipant?, activeSpeaker: Boolean, webinarSharing: Boolean)

When a conference is started, it is possible to unsubscribe to a video using this method.

Link copied to clipboard
abstract fun updateLocalVideoMaxBandwidth(room: IRainbowRoom?, maxBandwidth: Int, listener: RainbowListener<UpdateParticipantResult, ConferenceRepository.ConferenceOptionsError>? = null)

Request to update the maximum bandwidth of the sent video stream.

Link copied to clipboard
abstract fun updateVideoQuality(room: IRainbowRoom?, videoPublisher: ConferenceParticipant?, newMultiVideoQuality: MultiVideoQuality?, listener: RainbowListener<UpdateParticipantResult, ConferenceRepository.ConferenceOptionsError>? = null)

Request to update the video quality of the video publisher. To use this method you must have subscribed to the video before. Only works if your publisher use multi-video quality, see ConferenceParticipant.isMultiVideoQuality() If the param videoPublisher is null, the video quality of the main feed (active talker) will be updated instead